home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2002 November / SGI IRIX Base Documentation 2002 November.iso / usr / share / catman / p_man / cat3 / SCSL / strsm.z / strsm
Encoding:
Text File  |  2002-10-03  |  21.3 KB  |  463 lines

  1.  
  2.  
  3.  
  4. SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))                                                            SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      SSSSTTTTRRRRSSSSMMMM, DDDDTTTTRRRRSSSSMMMM, CCCCTTTTRRRRSSSSMMMM, ZZZZTTTTRRRRSSSSMMMM - Solves a real or complex triangular system
  10.      of equations with multiple right-hand sides
  11.  
  12. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.      Single precision
  14.  
  15.           Fortran:
  16.  
  17.                CCCCAAAALLLLLLLL SSSSTTTTRRRRSSSSMMMM ((((_s_i_d_e,,,, _u_p_l_o,,,, _t_r_a_n_s_a,,,, _d_i_a_g,,,, _m,,,, _n,,,, _a_l_p_h_a,,,, _a,,,, _l_d_a,,,, _b,,,,
  18.                _l_d_b))))
  19.  
  20.           C/C++:
  21.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  22.                vvvvooooiiiidddd ssssttttrrrrssssmmmm ((((cccchhhhaaaarrrr *_s_i_d_e,,,, cccchhhhaaaarrrr *_u_p_l_o,,,, cccchhhhaaaarrrr *_t_r_a_n_s_A,,,, cccchhhhaaaarrrr *_d_i_a_g,,,,
  23.                iiiinnnntttt _m,,,, iiiinnnntttt _n,,,, ffffllllooooaaaatttt _a_l_p_h_a,,,, ffffllllooooaaaatttt *_a,,,, iiiinnnntttt _l_d_a,,,, ffffllllooooaaaatttt *_b,,,, iiiinnnntttt
  24.                _l_d_b))));;;;
  25.  
  26.      Double precision
  27.  
  28.           Fortran:
  29.                CCCCAAAALLLLLLLL DDDDTTTTRRRRSSSSMMMM ((((_s_i_d_e,,,, _u_p_l_o,,,, _t_r_a_n_s_a,,,, _d_i_a_g,,,, _m,,,, _n,,,, _a_l_p_h_a,,,, _a,,,, _l_d_a,,,, _b,,,,
  30.                _l_d_b))))
  31.  
  32.           C/C++:
  33.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  34.                vvvvooooiiiidddd ddddttttrrrrssssmmmm ((((cccchhhhaaaarrrr *_s_i_d_e,,,, cccchhhhaaaarrrr *_u_p_l_o,,,, cccchhhhaaaarrrr *_t_r_a_n_s_A,,,, cccchhhhaaaarrrr *_d_i_a_g,,,,
  35.                iiiinnnntttt _m,,,, iiiinnnntttt _n,,,, ddddoooouuuubbbblllleeee _a_l_p_h_a,,,, ddddoooouuuubbbblllleeee *_a,,,, iiiinnnntttt _l_d_a,,,, ddddoooouuuubbbblllleeee *_b,,,, iiiinnnntttt
  36.                _l_d_b))));;;;
  37.  
  38.      Single precision complex
  39.  
  40.           Fortran:
  41.                CCCCAAAALLLLLLLL CCCCTTTTRRRRSSSSMMMM ((((_s_i_d_e,,,, _u_p_l_o,,,, _t_r_a_n_s_a,,,, _d_i_a_g,,,, _m,,,, _n,,,, _a_l_p_h_a,,,, _a,,,, _l_d_a,,,, _b,,,,
  42.                _l_d_b)
  43.  
  44.           C/C++:
  45.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  46.                vvvvooooiiiidddd ccccttttrrrrssssmmmm ((((cccchhhhaaaarrrr *_s_i_d_e,,,, cccchhhhaaaarrrr *_u_p_l_o,,,, cccchhhhaaaarrrr *_t_r_a_n_s_A,,,, cccchhhhaaaarrrr *_d_i_a_g,,,,
  47.                iiiinnnntttt _m,,,, iiiinnnntttt _n,,,, ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_a_l_p_h_a,,,, ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_a,,,, iiiinnnntttt _l_d_a,,,,
  48.                ssssccccssssllll____ccccoooommmmpppplllleeeexxxx *_b,,,, iiiinnnntttt _l_d_b))));;;;
  49.  
  50.           C++ STL:
  51.                ####iiiinnnncccclllluuuuddddeeee <<<<ccccoooommmmpppplllleeeexxxx....hhhh>>>>
  52.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  53.                vvvvooooiiiidddd ccccttttrrrrssssmmmm ((((cccchhhhaaaarrrr *_s_i_d_e,,,, cccchhhhaaaarrrr *_u_p_l_o,,,, cccchhhhaaaarrrr *_t_r_a_n_s_A,,,, cccchhhhaaaarrrr *_d_i_a_g,,,,
  54.                iiiinnnntttt _m,,,, iiiinnnntttt _n,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_a_l_p_h_a,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_a,,,, iiiinnnntttt
  55.                _l_d_a,,,, ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>> *_b,,,, iiiinnnntttt _l_d_b))));;;;
  56.  
  57.      Double precision complex
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))                                                            SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))
  71.  
  72.  
  73.  
  74.           Fortran:
  75.                CCCCAAAALLLLLLLL ZZZZTTTTRRRRSSSSMMMM ((((_s_i_d_e,,,, _u_p_l_o,,,, _t_r_a_n_s_a,,,, _d_i_a_g,,,, _m,,,, _n,,,, _a_l_p_h_a,,,, _a,,,, _l_d_a,,,, _b,,,,
  76.                _l_d_b)
  77.  
  78.           C/C++:
  79.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  80.                vvvvooooiiiidddd zzzzttttrrrrssssmmmm ((((cccchhhhaaaarrrr *_s_i_d_e,,,, cccchhhhaaaarrrr *_u_p_l_o,,,, cccchhhhaaaarrrr *_t_r_a_n_s_A,,,, cccchhhhaaaarrrr *_d_i_a_g,,,,
  81.                iiiinnnntttt _m,,,, iiiinnnntttt _n,,,, ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_a_l_p_h_a,,,, ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_a,,,, iiiinnnntttt _l_d_a,,,,
  82.                ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx *_b,,,, iiiinnnntttt _l_d_b))));;;;
  83.  
  84.           C++ STL:
  85.                ####iiiinnnncccclllluuuuddddeeee <<<<ccccoooommmmpppplllleeeexxxx....hhhh>>>>
  86.                ####iiiinnnncccclllluuuuddddeeee <<<<ssssccccssssllll____bbbbllllaaaassss....hhhh>>>>
  87.                vvvvooooiiiidddd zzzzttttrrrrssssmmmm ((((cccchhhhaaaarrrr *_s_i_d_e,,,, cccchhhhaaaarrrr *_u_p_l_o,,,, cccchhhhaaaarrrr *_t_r_a_n_s_A,,,, cccchhhhaaaarrrr *_d_i_a_g,,,,
  88.                iiiinnnntttt _m,,,, iiiinnnntttt _n,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_a_l_p_h_a,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_a,,,, iiiinnnntttt
  89.                _l_d_a,,,, ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>> *_b,,,, iiiinnnntttt _l_d_b))));;;;
  90.  
  91. IIIIMMMMPPPPLLLLEEEEMMMMEEEENNNNTTTTAAAATTTTIIIIOOOONNNN
  92.      These routines are part of the SCSL Scientific Library and can be loaded
  93.      using either the ----llllssssccccssss or the ----llllssssccccssss____mmmmpppp option.  The ----llllssssccccssss____mmmmpppp option
  94.      directs the linker to use the multi-processor version of the library.
  95.  
  96.      When linking to SCSL with ----llllssssccccssss or ----llllssssccccssss____mmmmpppp, the default integer size is
  97.      4 bytes (32 bits). Another version of SCSL is available in which integers
  98.      are 8 bytes (64 bits).  This version allows the user access to larger
  99.      memory sizes and helps when porting legacy Cray codes.  It can be loaded
  100.      by using the ----llllssssccccssss____iiii8888 option or the ----llllssssccccssss____iiii8888____mmmmpppp option. A program may use
  101.      only one of the two versions; 4-byte integer and 8-byte integer library
  102.      calls cannot be mixed.
  103.  
  104.      The C and C++ prototypes shown above are appropriate for the 4-byte
  105.      integer version of SCSL. When using the 8-byte integer version, the
  106.      variables of type iiiinnnntttt become lllloooonnnngggg lllloooonnnngggg and the <<<<ssssccccssssllll____bbbbllllaaaassss____iiii8888....hhhh>>>> header
  107.      file should be included.
  108.  
  109. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  110.      SSSSTTTTRRRRSSSSMMMM and DDDDTTTTRRRRSSSSMMMM solve a real triangular syste m of equations with
  111.      multiple right-hand sides.
  112.  
  113.      CCCCTTTTRRRRSSSSMMMM and ZZZZTTTTRRRRSSSSMMMM solve a complex triangular system of equations with
  114.      multiple right-hand sides.
  115.  
  116.      These routines solve one of the following matrix equations, using the
  117.      operation associated with each:
  118.  
  119.           _o_p(_A) _X = _a_l_p_h_a _B
  120.  
  121.           _B <- _a_l_p_h_a _o_p(_A-_1)_B
  122.  
  123.           or
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))                                                            SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))
  137.  
  138.  
  139.  
  140.           _X _o_p(_A) = _a_l_p_h_a _B
  141.  
  142.           _B <- _a_l_p_h_a _B _o_p(_A-_1)
  143.  
  144.      where
  145.  
  146.      *   _a_l_p_h_a is a scalar
  147.  
  148.      *   _X and _B are _m-by-_n matrices
  149.  
  150.      *   _A is either a unit or nonunit upper or lower triangular matrix
  151.  
  152.      *   _A-_1 is the inverse of _A
  153.  
  154.      *   _o_p(_A) is one of the following:
  155.  
  156.               _o_p(_A) = _A
  157.  
  158.               _o_p(_A) = _A_T
  159.  
  160.               _o_p(_A) = _A_H (CCCCTTTTRRRRSSSSMMMM  and ZZZZTTTTRRRRSSSSMMMM only)
  161.  
  162.      where _A_T is the transpose of _A, and _A_H is the conjugate transpose of _A.
  163.  
  164.      See the NOTES section of this man page for information about the
  165.      interpretation of the data types described in the following arguments.
  166.  
  167.      These routines have the following arguments:
  168.  
  169.      _s_i_d_e      Character.  (input)
  170.                Specifies whether _o_p(_A) appears on the left or right of _X, as
  171.                follows:
  172.  
  173.                _s_i_d_e = 'L' or 'l':  op(A)*X = alpha*B
  174.  
  175.                _s_i_d_e = 'R' or 'r':  X*op(A) = alpha*B
  176.  
  177.                For C/C++, a pointer to this character is passed.
  178.  
  179.      _u_p_l_o      Character.  (input)
  180.                Specifies whether matrix _A is an upper or lower triangular
  181.                matrix, as follows:
  182.  
  183.                _u_p_l_o = 'U' or 'u': _A is an upper triangular matrix.
  184.                _u_p_l_o = 'L' or 'l': _A is a lower triangular matrix.
  185.  
  186.                For C/C++, a pointer to this character is passed.
  187.  
  188.      _t_r_a_n_s_a    Character*1.  (input)
  189.                Specifies the form of _o_p(_A) to be used in the matrix
  190.                multiplication, as follows:
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202. SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))                                                            SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))
  203.  
  204.  
  205.  
  206.                _t_r_a_n_s_a = 'N' or 'n':  _o_p(_A) = _A
  207.  
  208.                _t_r_a_n_s_a = 'T' or 't':  _o_p(_A) = _A_T
  209.  
  210.                _t_r_a_n_s_a = 'C' or 'c':  _o_p(_A) = _A_T (SSSSTTTTRRRRSSSSMMMM, DDDDTTTTRRRRSSSSMMMM),
  211.  
  212.                or _o_p(_A) = _A_H (CCCCTTTTRRRRSSSSMMMM, ZZZZTTTTRRRRSSSSMMMM)
  213.  
  214.                For C/C++, a pointer to this character is passed.
  215.  
  216.      _d_i_a_g      Character.  (input)
  217.                Specifies whether _A is unit triangular, as follows:
  218.  
  219.                _d_i_a_g = 'U' or 'u': _A is assumed to be unit triangular.
  220.                _d_i_a_g = 'N' or 'n': _A is not assumed to be unit triangular.
  221.  
  222.                For C/C++, a pointer to this character is passed.
  223.  
  224.      _m         Integer.  (input)
  225.                Specifies the number of rows in _B.  _m must be >= 0.
  226.  
  227.      _n         Integer.  (input)
  228.                Specifies the number of columns in _B.  _n must be >= 0.
  229.  
  230.      _a_l_p_h_a     Scalar factor.  (input)
  231.                SSSSTTTTRRRRSSSSMMMM: Single precision.
  232.                DDDDTTTTRRRRSSSSMMMM: Double precision.
  233.                CCCCTTTTRRRRSSSSMMMM: Single precision complex.
  234.                ZZZZTTTTRRRRSSSSMMMM: Double precision complex.
  235.                When _a_l_p_h_a is 0, _a is not referenced, and _b need not be set
  236.                before entry.
  237.  
  238.                For C/C++, a pointer to this scalar is passed when alpha is
  239.                complex; otherwise, alpha is passed by value.
  240.  
  241.      _a         Array of dimension (_l_d_a,_k).  (input)
  242.                SSSSTTTTRRRRSSSSMMMM: Single precision array.
  243.                DDDDTTTTRRRRSSSSMMMM: Double precision array.
  244.                CCCCTTTTRRRRSSSSMMMM: Single precision complex array.
  245.                ZZZZTTTTRRRRSSSSMMMM: Double precision complex array.
  246.                When _s_i_d_e = 'L' or 'l', _k is _m; when _s_i_d_e = 'R' or 'r', it is
  247.                _n.
  248.                Contains the matrix _A.
  249.  
  250.                Before entry with _u_p_l_o = 'U' or 'u', the leading _k-by-_k upper
  251.                triangular part of array _a must contain the upper triangular
  252.                matrix.  The strictly lower triangular part of _a is not
  253.                referenced.
  254.  
  255.                Before entry with _u_p_l_o = 'L' or 'l', the leading _k-by-_k lower
  256.                triangular part of array _a must contain the lower triangular
  257.                matrix.  The strictly upper triangular part of _a is not
  258.  
  259.  
  260.  
  261.                                                                         PPPPaaaaggggeeee 4444
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268. SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))                                                            SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))
  269.  
  270.  
  271.  
  272.                referenced.
  273.  
  274.                When _d_i_a_g = 'U' or 'u', the diagonal elements of _a are not
  275.                referenced, but they are assumed to be unity.
  276.  
  277.      _l_d_a       Integer.  (input)
  278.                Specifies the first dimension of _a as declared in the calling
  279.                program.
  280.  
  281.                When _s_i_d_e = 'L' or 'l', _l_d_a >= MMMMAAAAXXXX(1,_m).
  282.  
  283.                When _s_i_d_e = 'R' or 'r', _l_d_a >= MMMMAAAAXXXX(1,_n).
  284.  
  285.      _b         Array of dimension (_l_d_b,_n).  (input)
  286.                SSSSTTTTRRRRSSSSMMMM: Real array.
  287.                DDDDTTTTRRRRSSSSMMMM: Double precision array.
  288.                CCCCTTTTRRRRSSSSMMMM: Complex array.
  289.                ZZZZTTTTRRRRSSSSMMMM: Double complex array.
  290.                Contains the matrix _B.
  291.  
  292.                Before entry, the leading _m-by-_n part of array _b must contain
  293.                the right-hand side matrix _B.  On exit, the solution matrix _X
  294.                overwrites array _b.
  295.  
  296.      _l_d_b       Integer.  (input)
  297.                Specifies the first dimension of _b as declared in the calling
  298.                program.  _l_d_b >= MMMMAAAAXXXX(1,_m).
  299.  
  300. NNNNOOOOTTTTEEEESSSS
  301.      These routines are Level 3 Basic Linear Algebra Subprograms (Level 3
  302.      BLAS).
  303.  
  304.    DDDDaaaattttaaaa TTTTyyyyppppeeeessss
  305.      The following data types are described in this documentation:
  306.  
  307.           TTTTeeeerrrrmmmm UUUUsssseeeedddd                     DDDDaaaattttaaaa ttttyyyyppppeeee
  308.  
  309.      Fortran:
  310.  
  311.           Array dimensioned _n           xxxx((((nnnn))))
  312.  
  313.           Array of dimensions (_m,_n)     xxxx((((mmmm,,,,nnnn))))
  314.  
  315.           Character                     CCCCHHHHAAAARRRRAAAACCCCTTTTEEEERRRR
  316.  
  317.           Integer                       IIIINNNNTTTTEEEEGGGGEEEERRRR (IIIINNNNTTTTEEEEGGGGEEEERRRR****8888 for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  318.  
  319.           Single precision              RRRREEEEAAAALLLL
  320.  
  321.           Double precision              DDDDOOOOUUUUBBBBLLLLEEEE PPPPRRRREEEECCCCIIIISSSSIIIIOOOONNNN
  322.  
  323.  
  324.  
  325.  
  326.  
  327.                                                                         PPPPaaaaggggeeee 5555
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334. SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))                                                            SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))
  335.  
  336.  
  337.  
  338.           Single precision complex      CCCCOOOOMMMMPPPPLLLLEEEEXXXX
  339.  
  340.           Double precision complex      DDDDOOOOUUUUBBBBLLLLEEEE CCCCOOOOMMMMPPPPLLLLEEEEXXXX
  341.  
  342.      C/C++:
  343.  
  344.           Array dimensioned _n           xxxx[[[[_n]]]]
  345.  
  346.           Array of dimensions (_m,_n)     xxxx[[[[mmmm****nnnn]]]]
  347.  
  348.           Character                     cccchhhhaaaarrrr
  349.  
  350.           Integer                       iiiinnnntttt (lllloooonnnngggg lllloooonnnngggg for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  351.  
  352.           Single precision              ffffllllooooaaaatttt
  353.  
  354.           Double precision              ddddoooouuuubbbblllleeee
  355.  
  356.           Single precision complex      ssssccccssssllll____ccccoooommmmpppplllleeeexxxx
  357.  
  358.           Double precision complex      ssssccccssssllll____zzzzoooommmmpppplllleeeexxxx
  359.  
  360.      C++ STL:
  361.  
  362.           Array dimensioned _n           xxxx[[[[_n]]]]
  363.  
  364.           Array of dimensions (_m,_n)     xxxx[[[[mmmm****nnnn]]]]
  365.  
  366.           Character                     cccchhhhaaaarrrr
  367.  
  368.           Integer                       iiiinnnntttt (lllloooonnnngggg lllloooonnnngggg for ----llllssssccccssss____iiii8888[[[[____mmmmpppp]]]])
  369.  
  370.           Single precision              ffffllllooooaaaatttt
  371.  
  372.           Double precision              ddddoooouuuubbbblllleeee
  373.  
  374.           Single precision complex      ccccoooommmmpppplllleeeexxxx<<<<ffffllllooooaaaatttt>>>>
  375.  
  376.           Double precision complex      ccccoooommmmpppplllleeeexxxx<<<<ddddoooouuuubbbblllleeee>>>>
  377.  
  378.      Note that you can explicitly declare multidimensional C/C++ arrays
  379.      provided that the array dimensions are swapped with respect to the
  380.      Fortran declaration (e.g., xxxx[[[[nnnn]]]][[[[mmmm]]]] in C/C++ versus xxxx((((mmmm,,,,nnnn)))) in Fortran).
  381.      To avoid a compiler type mismatch error in C++ (or a compiler warning
  382.      message in C), however, the array should be cast to a pointer of the
  383.      appropriate type when passed as an argument to a SCSL routine.
  384.  
  385. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  386.      IIIINNNNTTTTRRRROOOO____SSSSCCCCSSSSLLLL(3S), IIIINNNNTTTTRRRROOOO____BBBBLLLLAAAASSSS3333(3S)
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.                                                                         PPPPaaaaggggeeee 6666
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400. SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))                                                            SSSSTTTTRRRRSSSSMMMM((((3333SSSS))))
  401.  
  402.  
  403.  
  404.      IIIINNNNTTTTRRRROOOO____CCCCBBBBLLLLAAAASSSS(3S) for information about using the C interface to Fortran 77
  405.      Basic Linear Algebra Subprograms (legacy BLAS) set forth by the Basic
  406.      Linear Algebra Subprograms Technical Forum.
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.  
  418.  
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.                                                                         PPPPaaaaggggeeee 7777
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.